home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 3: CDPD 3
/
Almathera Ten on Ten - Disc 3: CDPD3.iso
/
scope
/
101-125
/
scopedisk103
/
fishtank
/
docs
/
read.me
< prev
next >
Wrap
Text File
|
1995-03-19
|
18KB
|
465 lines
How to use "fishTank"
* fishTank.doc *
--************--
This document explains how to use the fishTank program to
simulate an aquarium. Additional instructions on how to expand
the program's capabilities can be found in "makeFish.doc" and
"makeTanks.doc".
* about fishTank *
--**************--
"FishTank" is a program that simulates an aquarium. It was
written entirely in object-oriented JForth (version 2.0). The
intent of the program is to provide a visually pleasing and
relatively accurate simulation of tropical fish in a home
aquarium. While the behavior of tropical fish is very much more
complex than the behavior displayed by my simulated fish, their
survival characteristics are at least similar. "FishTank" could
be used as a humane way of testing out various combinations of
fish and water conditions by those planning (or just daydreaming
about) a real aquarium.
This program makes extensive use of the Amiga's animation
system. The screen is a double-buffered HAM-mode screen, and the
fish are all "AnimObs". Although I probably do not use the
AnimObs to their fullest advantage, they do work in a reliable
and consistent manner.
* setting up *
--**********--
Before you do anything else, you will need to "de-arc" the
program and all it's files. I will assume that you have used
"zoo" on the archive already (after all you're reading this,
aren't you ?), but you may have to repeat this step because
"fishTank" uses a directory structure that needs to be duplicated
exactly as it was when I zoo'ed the files together. This means
you will have to use zoo with the "//" option. Try this:
zoo x// fishTank.zoo
Read the documentation that comes with zoo if you need help
with this.
*** IMPORTANT *** You will have to name the disk that the
fishTank files are on "fish" or it will not run. If you are
installing fishTank on a hard disk you will have to "assign
fish:" to the partition and directory that you put fishTank on.
Page 1
How to use "fishTank"
You can make as many copies of "fishTank" as you want, and
give them away to anybody you choose to, by any means you have
available to you, but please remember to keep all the files
together (that includes this "read.me" file, and all the other
documentation files), and to name the copies "fish". You are
expressly forbidden to sell or otherwise make money from this
program.
I am also requesting that you complete the questionnaire I
have included with this program (it's called "write.me"), and
send it back to me either by ordinary (paper in an envelope)
mail, or by CompuServe. You can find my address and CompuServe
user ID number at the end of this document. This should only take
a few minutes of your time, and I really would appreciate it very
much.
"FishTank" requires an Amiga (1000, 500, 2000, 2500 ,etc.)
with Workbench 1.2 or 1.3 and one megabyte of memory. This is not
to say that the program may not run on systems with less memory,
however, I have experienced some problems running it in 512k, and
have not tested it on systems with between 512k and one megabyte.
I would recommend not multi-tasking fishTank with other programs
that are graphics- or sound-intensive or otherwise use large
amounts of chip memory.
You will need the ARP library, version 1.3 to run this
program. It is easy to install in your "libs" directory and is
available anywhere you find public-domain Amiga software.
You should also make sure you have the correct font for the
menus I use. If you have "Times 15" on your Workbench you need
not worry about doing this. If not, and if you have Workbench1.3,
you will find this font on your "Extras" disk, so type the
following line in from your CLI or Shell:
ASSIGN fonts: "Extras 1.3:fonts"
This will tell the system to look for all the fonts on the
"Extras 1.3:" disk in its "fonts" directory. If you want to run
another program that uses Workbench fonts after you are done with
the fishTank you will need to type the following:
ASSIGN fonts: sys:fonts
This will get you back to the fonts on your Workbench disk.
Don't be too upset if you don't have have this font or can't
find a copy of it. The fishTank will still run normally without
it, its menus will just not be as good looking.
Now that you have a disk called "fish:" with all the
fishTank files on it, you can run the program by either
Page 2
How to use "fishTank"
double-clicking on the "goFish" icon, or typing "run goFish" in
your CLI or Shell. I would recommend copying the program and all
its files to a floppy-sized "rad:" disk if you have one
available, as this will make the fishTank load much faster.
You should now be looking at a screen with the word
"LOADING" written at the top. Depending on weather you are
working from a floppy or a ram disk, you could be looking at this
for a while. You won't be able to 'drag' this screen, and I would
strongly recommend not doing anything else on your Amiga until
this screen goes away.
Once the program is done loading, you will see three fish
swimming around in an empty fishtank, with some numbers written
on the title bar. If you press the right mouse button you will
see the menus. I will now explain the menus and menu selections
in the order in which they appear.
SYSTEM
------------------
The system menu contains items that affect the tank
conditions, give general information, or stop the program. The
items in this menu are as follow:
Temperature
---------------
This allows you to change the water temperature of the
fishTank. When you select this option a requester will appear in
the fishtank. Click on the long, black rectangle at the bottom of
the requester and a blue button will appear. Move the button
around by either clicking on the rectangle in the direction you
want the temperature to change, or click on the button itself
and drag it around in the rectangle. Once you have the button in
the position you want it in, click on the word "Update". If you
want the temperature to go back to what it was before you saw
this requester, click on the word "Cancel". Most of the fish in
this tank like the temperature to be about 26 degrees Celsius
(which is about 79 degrees Fahrenheit). If the fish that were in
the tank before you changed the temperature have suddenly
disappeared, it means that the change in temperature has killed
them. Check the "fishes" menu to see which fish you can put in
the tank now.
pH
------
This lets you change the acidity of the water. The
requester works in much the same manner as the "temperature"
requester. Most fish like the pH to be pretty close to 7.0, but I
have included fish that will thrive in more acidic water (a lower
pH), and more alkaline water (a higher pH).
Page 3
How to use "fishTank"
Hardness
------------
The hardness option lets you change the amount of
dissolved calcium in the water. Most water has at least some
calcium in it. A hardness of about 200 ppm will support most of
the fish I've included.
About
---------
This selection will tell you my name and address. If
you have any questions, comments, or are interested in my source
code, you can write to me at the address on this requester. Click
on "Resume" to get rid of this requester.
Bibliography
----------------
If you select this you will see the name of a book
about fish that I used as reference when writing this program. If
you click on "next", the name of another book will appear. If you
get tired of reading these entries click on "resume" to go back
to your fish.
Load Tank
-------------
This selection will let you load a new tank into the
background. It is mainly for use with tanks that you have drawn
yourself. For more about this read "makeTanks.doc". It is very
important that the file you select from this file requester is a
320 by 200 HAM-mode IFF-picture file. Don't select any files that
you are not sure of with this requester.
Load Fish
-------------
You can use this menu selection to load in a fish that
you have drawn yourself. If the water conditions are not correct
for this fish it will still be added to the "fishes" menu. See
"makeFish.doc" for complete details on making your own fish. It
is absolutely vital that any file you select with the "load fish"
file requester is a genuine ".ascii" fish file (one that meets
all the specifications listed in "makeFish.doc"). If you try to
load any other type of file with this requester the fishTank will
"hang-up", causing you to have to reboot your machine. Once you
have 20 fish on the "fishes" menu this menu selection will be
"ghosted", and you will not be able to select it again.
Quit
--------
If you chose this the fishTank will go away.
Page 4
How to use "fishTank"
FISHES
------------------
The "fishes" menu contains the names of all the fishes
that are currently available to fishTank. Some of the fishes may
be "ghosted" on this menu. This means that the water conditions
are not conducive to the survival of this fish. If you change the
water conditions maybe you will then be able to load this fish
into your tank.
If a fish's name has a big red dot to the left of it,
it means that this fish is in the tank right now. To put a new
fish in the tank, all you need to do is move the cursor over its
name on the menu. To remove a fish from the tank, just select a
fish whose name has a dot next to it.
If you load your own fish (by selecting "Load Fish"
from the "system" menu) its name will appear on this menu.
When you start up the fishTank, the following fish will
be on the "fishes" menu:
platy
zebra
tetra
discus
snail
barb
oscar
goldfish
catfish
TANK
------------------
The tank menu will let you change the appearance of the
tank. Not only will this make the background look different but
it may affect the behavior of the fish. The "checked" item is the
one which is currently selected. If you have loaded your own tank
(with "Load Tank" from the "system" menu), the dot will be next
to the selection that best describes your tank.
Tank menu selections are:
gravel only
densely planted
rocks, plants & driftwood
rocks, no plants
FOOD
------------------
Page 5
How to use "fishTank"
The "food" menu lets you select the type of food your
fish will receive. Different fish eat different things, and if
you don't feed a fish something that it will eat it will die.
These are your choices:
flakes
----------
"Flakes" basically refers to any dry,
prepared food you would give to a fish. Most fish will eat
flakes. As a general rule feeding your fish both worms and
vegetables is nutritionally equivalent to feeding them flakes.
worms
---------
The "worms" selection lets you feed your fish
small living creatures. Most commonly this would mean worms or
brine shrimp. Feeding worms is a good idea for fish that you
suspect are carnivorous.
vegetables
--------------
Some fish are herbivorous, and feeding them
vegetables will make them happy (or at least well-fed).
guppies
-----------
"Guppies" refers to any small, inexpensive
fish that you might want to feed to your fish. The thing to
remember here is that a fish that normally feeds on other fish
cannot distinguish between the fish you put in the tank for it to
eat and the fish that you put in the tank that you don't want it
to eat.
* acknowledgments *
--***************--
Source code is available upon request, and requires JForth2.0
(which is available from Delta Research). The code makes
extensive use of JForth's "ODE" (Object-oriented Development
Environment). I fear it may be of little use to people who are
unfamiliar with either forth or object-oriented programming
techniques.
Before I forget, I would like to thank John Friedman for
helping me on this project and getting me started in
object-oriented programming. Without his help and support I
probably never would have finished "fishTank". I would also like
to thank Tom DeFanti, Dan Sandin, and Maxine Brown for their
advice and for being so supportive of my ideas. I'd like to thank
Irv Moy for the use of his Amiga 500 which convinced me that this
program would run on systems other than my old 1000. I know this
list is getting long, but I would also like to thank the folks at
Delta Research for a very well thought out language, and all that
Page 6
How to use "fishTank"
crisp, clear source code that showed me how the language really
works, and I would like to thank all the helpful people on
CompuServe's AmigaTech forum for helping me get the information I
needed to use the ARP fileRequester.
You can write to me at:
Harriet Lurie
Department of Art (Mail Code 036)
University of Illinois at Chicago
Box 4348
Chicago, IL 60680
U.S.A.
or on CompuServe:
Harriet Lurie
73760,3624
Page 7